// .txt

beginzonescript;

variables;

short crime_tolerance = 200;
short last_abil;
short i;

body;

beginstate INIT_STATE;

//	set_name(,"");

	add_range_to_group(8,14,1);
	set_level(1001,30);
	set_aggression(1001,9);

	add_range_to_group(15,21,2);
	set_level(1002,30);
	set_aggression(1002,9);

	add_range_to_group(22,28,3);
	set_level(1003,30);
	set_aggression(1003,9);

	add_range_to_group(29,35,4);
	set_level(1004,30);
	set_aggression(1004,9);

	add_range_to_group(36,42,5);
	set_level(1005,30);
	set_aggression(1005,9);

	add_range_to_group(43,47,6);
	set_level(1006,30);
	set_aggression(1006,8);

	set_name(48,"Shaper Ghost");
	set_level(48,30);
	set_boss_level(48,2);
	set_name(49,"Guardian Ghost");
	set_level(49,30);
	set_boss_level(49,2);
	set_new_abil(49,20);
	
	//if (get_sdf() > 0) {
		//make_zone_hostile();
		//}

	last_abil = get_current_tick();
	
	set_crime_tolerance(crime_tolerance);
	break;

beginstate EXIT_STATE;

break;

beginstate START_STATE;
	// clear zone?
	if ((zone_clear(ME) == FALSE) && (get_flag(74,14) > 0) && (get_flag(74,15) > 0)) {
		print_str_color("You have successfully traveled down this road.",2);
		clear_zone(ME);	
		}
		
	//if ((get_crime_level() >= crime_tolerance) && (get_sdf(,) == 0)) {
	//	make_zone_hostile();
	//	set_flag(,,1);
	//	}

	// if (gf(,) == 0) {
	//	if (get_ran(1,0,100) < 10)
	//		give_char_text_bubble(,"");
	//	}
	
	if (((is_combat()) && (tick_difference(last_abil,get_current_tick()) > 0)) || ((is_group()) && (tick_difference(last_abil,get_current_tick()) > 3))) {
		last_abil = get_current_tick();
		
		if (gf(74,20) > 0) {
			inc_flag(74,20,-1);
			if (gf(74,20) == 2)
				print_str_color("The power in some nearby conduits is starting to flicker.",3);
			if (gf(74,20) == 1)
				print_str_color("The power in some nearby conduits is almost gone.",3);
			if (gf(74,20) == 0)
				print_str_color("You no longer hear a hum from the nearby machinery.",3);
			}
			
		if (gf(74,21) > 0) {
			inc_flag(74,21,-1);
			if (gf(74,21) == 5)
				print_str_color("The power in some nearby conduits is starting to flicker.",3);
			if (gf(74,21) == 2)
				print_str_color("The power in some nearby conduits is almost gone.",3);
			if (gf(74,21) == 0)
				print_str_color("You no longer hear a hum from the nearby machinery.",3);
			}
			
		if (gf(74,22) > 0) {
			inc_flag(74,22,-1);
			if (gf(74,22) == 5)
				print_str_color("The power in some nearby conduits is starting to flicker.",3);
			if (gf(74,22) == 2)
				print_str_color("The power in some nearby conduits is almost gone.",3);
			if (gf(74,22) == 0)
				print_str_color("You no longer hear a hum from the nearby machinery.",3);
			}
			
		if (gf(74,23) > 0) {
			inc_flag(74,23,-1);
			if (gf(74,23) == 5)
				print_str_color("The power in some nearby conduits is starting to flicker.",3);
			if (gf(74,23) == 2)
				print_str_color("The power in some nearby conduits is almost gone.",3);
			if (gf(74,23) == 0)
				print_str_color("You no longer hear a hum from the nearby machinery.",3);
			}
			
		if (gf(74,24) > 0) {
			inc_flag(74,24,-1);
			if (gf(74,24) == 5)
				print_str_color("The power in some nearby conduits is starting to flicker.",3);
			if (gf(74,24) == 2)
				print_str_color("The power in some nearby conduits is almost gone.",3);
			if (gf(74,24) == 0)
				print_str_color("You no longer hear a hum from the nearby machinery.",3);
			}

		}
	
	sf(74,16,0);
	sf(74,17,0);
	sf(74,18,0);
	sf(74,19,0);
	
	// group 1
	if (gf(74,20) > 0) {
		set_aggression(1002,1);
		give_char_text_bubble(15 + get_ran(1,0,6),"Zzzzz.");
		give_char_text_bubble(15 + get_ran(1,0,6),"Zzzzz.");
		sf(74,16,1);
		}
		else set_aggression(1002,9);
		
	// group 2
	if (gf(74,21) > 0) {
		set_aggression(1001,1);
		give_char_text_bubble(8 + get_ran(1,0,6),"Zzzzz.");
		give_char_text_bubble(8 + get_ran(1,0,6),"Zzzzz.");
		sf(74,17,1);
		}
		else set_aggression(1001,9);
		
	// group 3
	if ((gf(74,22) > 0) || (gf(74,24) > 0)) {
		set_aggression(1003,1);
		give_char_text_bubble(22 + get_ran(1,0,6),"Zzzzz.");
		give_char_text_bubble(22 + get_ran(1,0,6),"Zzzzz.");
		sf(74,18,1);
		}
		else set_aggression(1003,9);
		
	// group 4
	if ((gf(74,23) > 0) || (gf(74,24) > 0)) {
		set_aggression(1004,1);
		give_char_text_bubble(29 + get_ran(1,0,6),"Zzzzz.");
		give_char_text_bubble(29 + get_ran(1,0,6),"Zzzzz.");
		sf(74,19,1);
		}
		else set_aggression(1004,9);



break;

beginstate 10;
	sf(74,14,1);
break;

beginstate 11;
	sf(74,15,1);
break;

//	print_str("");
//	set_terrain_string_range(".",3);
//	set_terrain_string_range("The sign says - .",3);
